package cn.iocoder.yudao.module.crossborder.platform.dal.dataobject.platformwebhook;

import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;

/**
 * 跨境电商平台Webhook配置 DO
 *
 * @author 芋道源码
 */
@TableName("crossborder_platform_webhook")
@KeySequence("crossborder_platform_webhook_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PlatformWebhookDO extends BaseDO {

    /**
     * Webhook编号
     */
    @TableId
    private Long id;
    /**
     * 平台编号
     */
    private Long platformId;
    /**
     * 店铺编号
     */
    private Long storeId;
    /**
     * Webhook类型
     */
    private String webhookType;
    /**
     * 事件类型
     */
    private String eventType;
    /**
     * Webhook URL
     */
    private String webhookUrl;
    /**
     * 密钥
     */
    private String secretKey;
    /**
     * 验证令牌
     */
    private String verificationToken;
    /**
     * 请求头配置JSON
     */
    private String headersConfig;
    /**
     * 负载格式（json/xml/form）
     */
    private String payloadFormat;
    /**
     * 重试策略JSON
     */
    private String retryPolicy;
    /**
     * 过滤配置JSON
     */
    private String filterConfig;
    /**
     * 状态（0正常 1停用）
     */
    private Integer status;
    /**
     * 是否启用
     */
    private Boolean enabled;
    /**
     * 最后触发时间
     */
    private LocalDateTime lastTriggerTime;
    /**
     * 触发次数
     */
    private Integer triggerCount;
    /**
     * 成功次数
     */
    private Integer successCount;
    /**
     * 失败次数
     */
    private Integer failedCount;
    /**
     * 备注
     */
    private String remark;


}
